星战机器人 R2-D2 离我们有多远?
R2-D2(图右)和 C3PO(图左)图片来源于网络
丹棱君有话说:《星球大战外传:侠盗一号》将于 2017 年 1 月 6 日登陆中国,星战迷们早就乐得坐不住了吧?!惴惴不安等待着的同时,不妨换个视角,和丹棱君一起来瞧瞧星战电影中的呆萌机器人 R2-D2 有多超前。现实生活中的我们,是否已经能够拥有一个像它一样聪明能干的小助手呢?
说起 R2-D2,喜欢星战电影的朋友们一定并不陌生这个圆滚滚的小胖子机器人。别看 R2-D2 的个子小,它的影响可不小:R2-D2 和它的好哥们儿机器人 C3PO 是仅有的两位在七部星战电影都有出镜的角色。
R2-D2 凭借着呆萌的造型和在历代星战电影中的出彩表现,逐渐成为最受大众欢迎的机器人角色之一,而且它的影响还超出了电影,在 2003 年入选卡耐基梅隆大学主办的机器人名人堂 (Robot Hall of Fame)。
按照星战电影小说里的设定,R2-D2 是宇航技工机器人(Astromech Droid),主要功能是为星际飞船做维修保养,同时内置导航系统来存储和计算宇宙超空间跳跃的坐标。
虽然 R2-D2 的本职工作是做飞船维护,但电影里的它实际承担了主角身边的万能机器人的任务,萌但不笨,屡建奇功。比如在《星球大战 VI:绝地归来》中,R2-D2 就在救援主角天行者卢克的过程中起了至关重要的作用。
R2-D2 1977 年设计原图,图片来源于推特
R2-D2 在 1977 年由特效设计师 Tony Dyson 创作,距今已有将近 40 年。随着 AI 相关研发进入日新月异的阶段,是时候将星战电影里的 R2-D2 与现实的科技进程做一对比,看看科幻作者的想象力有多超前了……
1. 计算机视觉
R2-D2 有一个可以 360 度旋转的镜头,来观察周围的环境和识别身边的人物,具有计算机视觉能力。
计算机视觉是一门研究如何使机器“看”的科学,用摄影机和计算机代替人眼对目标进行识别、跟踪和测量等机器视觉,并进一步做图像处理,用计算机处理成更适合人眼观察或传送给仪器检测的图像。
如今,人们已掌握部分解决具体计算机视觉任务的方法, 如脸孔、指纹、文字、医学图像等,但是“泛用型”的电脑视觉目前在民用领域还是非常有限。
毕竟,让计算机可以看并不是一个简单的工作,就拿一个最简单的识别猫的任务来说,幼儿通过几张照片就可以理解猫是什么,计算机却需要上百万的图片来进行训练才能达到堪比人眼识别的准确率。
不过,计算机的优势在于可以发现图像的细节,找出人眼不易察觉出的区别,比如计算机区分不同种类的同一科生物(比如猫、鱼),就比人眼识别要精确很多。
目前主要的机器视觉方法还是需要依赖人类的指令来进行监督,计算机科学家需要告诉计算机这些图片上的物体是猫,计算机才能依此来学习猫的特性。
在宇宙中探险的 R2-D2 ,遇到许多奇奇怪怪的生物和机器人,有些是前所未见的。因此,它除了要能识别预先训练过的图像或物体,还要有对未见过的物体进行识别和产生概念的能力,而这种能自行学习并产生概念的计算机视觉能力目前依然是难题。
2012 年,Google X 实验室由 Andrew Ng 及 Jeff Dean 领导的实验小组使用了 16000 个计算机处理器建构了一个有 10 亿个节点的虚拟大脑,通过分析 1000 万帧 Youtube 上的无标签剪辑图片,自动学习和产生了猫的概念,并从接下来输入的 2 万张图片的测试中准确识别了猫。
Google 虚拟大脑自己构建产生的猫的概念图片,图片来源于 Google Blog
总体而言,目前的技术还做不到 R2-D2 那么聪明的如人类般的视觉概念认知能力,也做不到那么小巧(毕竟这需要大量的处理器参与模拟神经网络),要跟上科幻作者的想象力,还有很多困难需要克服。
2. 即时定位与地图构建
即时定位与地图构建(Simultaneous Localization and Mapping,简称 SLAM)是机器人领域的一个难题,主要是指机器人从未知环境的未知地点出发,在运动过程中通过重复观测到的地图特征(比如墙角和柱子等)定位自身位置和姿态,再根据自身位置增量式的构建地图,从而达到同时定位和地图构建的目的。
电影里的 R2-D2 虽然内置一些飞船或星球的地图,但是很多时候它也需要在陌生的环境中学习适应,才能够自由探索和行动,这时候就需要 SLAM 技术的帮助。
当然 R2-D2 也有慌不择路的时候……
现在非常普及的家政扫地机器人就是一个非常好的例子,这里需要解决一个 2D 平面的 SLAM 的问题,在一个室内的空间环境,它们可以探测出地面环境并且工作。
如今,SLAM 方法已被广泛应用于无人机、无人车、AR 、无人潜艇、行星探测车等多个领域。
Google 无人车外部实景和计算机实时生成的外部环境对比
苏黎世理工自动系统实验室无人机在有限辅助监督下生成的 3D 空间地图
目前火热的 AR 技术,比如微软的 HoloLens 、谷歌的 Project Tango 和 Magic Leap,都要用到 SLAM 方法。只有这样,AR 设备才可以通过传感器计算设备自身的精确位置,同时又能将周围的三位空间进行实时重建,从而实现和身边空间的 AR 互动。
HoloLens 使用者在真实空间的 AR 互动
对比电影里的 R2-D2 ,我们可以骄傲地说,如今的 SLAM 技术已经可以基本实现 R2-D2 在未知空间里探测和移动的功能。
3. 自然语言处理
电影里的 R2-D2 可以听懂主角们的讲话,但是它自己并不具备说人类语言的能力,而是说一种其他机器人可以理解的语言 —— 一系列滴滴嘟嘟的声音所带代表的机器二维码。
闪闪发亮滴滴嘟嘟的 R2-D2 在很努力地说话
R2-D2 最初的设计主要是针对飞船的修复维护,它也主要和其他机器人交互,所以并没有安装人类语言的模块。在电影里,我们看到主角需要用专门的翻译器,或者必须通过能说人类语言的机器人 C3PO 才可以明白 R2-D2 在讲什么。
自然语言处理(Natural Language Processing,或简称 NLP)是人工智能和语言学领域的分支学科,主要研究计算机如何和人通过自然语言进行交互。在这个领域中的难点,比较主要的有自然语言理解,也就是解决如何让计算机听或读,把自然语言转化为计算机程序更易于处理的形式;也有自然语言生成,也是如何让计算机说或写,把计算机信息转化为自然语言。
自然语言处理的应用已然深入到了我们平常生活的很多方面,比如文字、语音的多语种机器翻译,文字和语音的相互转换,还有时下非常流行的智能个人助理。
时下大部分的智能个人助理,比如 Google Assistant、Amazon 的 Alexa、Apple 的 Siri 以及微软的小娜,都可以很好地用于解决生活工作中的具体任务,包括管理日历行程、查询天气等等。值得一提的是,微软的小冰似乎走了一个完全不同的路径,她更关注于对话和聊天本身,而不是解决任务。相比之下,小冰更像一个情感的伴侣,可以说是诸多智能助理中最像人的智能助理。
笔者和小冰的一段有趣对话
当然目前的智能助理还有不少问题需要解决,比如多人同时对话时如何确认对话对象、聊天时语境的变换等等,还不能完全达到 R2-D2 那样自如理解主角的语言。不过很多智能助理已经可以“说话”,这一点可以说打败了只能讲机器语言的 R2-D2 。
随着技术的迭代,加上越来越多的用户参与使用和训练,相信这些智能助理也能越来越人性化,早日实现与科幻电影的机器人一样流畅的对话能力。
奇缘
这篇文章的缘起,是笔者 2015 年在西雅图华盛顿大学科技政策实验室主办的 WeRobot 会议上旁听了由 R2-D2 的设计者 Tony Dyson 做的关于机器人的主旨讲话。没想到 Tony Dyson 先生于 2016 年初不幸辞世,西雅图的短暂相逢也愈发显得珍贵。
在那次讲话里,有现场听众给 Tony Dyson 老先生提问:“ R2-D2 最大的心理问题是什么?”
老先生想了想,很爽快地回答说:“应该是拯救了银河系但没有因此被欣赏和承认吧!”
没受到表扬的 R2-D2 应该会是这个反应吧?
若你也赞许 R2-D2 为银河系做过的巨大贡献、爱过这个萌且非常努力的小机器人,请留言或点赞,我觉得它那富有想象力的爸爸 Tony Dyson 先生会感受到的……^_^
(作者毕业于华盛顿大学,现居西雅图。)
本文转载自微信公众号:微软研究院 AI 头条
了解更多:
后台入驻微软小冰
如果你很萌,请跟她一决高下!